<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2020/2/25
 * Time: 9:39
 */
namespace app\api\job;

use think\queue\Job;
use think\Log;
use think\Db;
use think\loader;
class Test {

    /**
     * fire是消息队列默认调用的方法
     * @param Job $job 当前的任务对象
     * @param array|mixed $data 发布任务时自定义的数据
     */
    public function fire(Job $job, $data)
    {

        $id = Db::name('jlou_order')->where('order_id',$data['order_id'])->setField('is_refund',1);
        if($id){
            echo '已发送';
            $job->delete();
        }else{
            echo '发送失败';
            $job->delete();
        }
        //任务执行超过1次，则删除任务
        if ($job->attempts() > 3) {
            echo "执行次数超过1次";
            $job->delete();
        }
        $job->delete();

    }
    /**
     * 消息在到达消费者时可能已经不需要执行了
     * @param array|mixed $data 发布任务时自定义的数据
     * @return boolean 任务执行的结果
     */
    private function checkJob($data)
    {

        return true;
    }
    /**
     * 根据消息中的数据进行实际的业务处理
     */
    private function doJob($data)
    {
        //判断当前时间是否
        return true;
        // 实际业务流程处理

    }
}
